Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 16.12.2013, 16:30
Аспирант
Отправить личное сообщение для housewm Посмотреть профиль Найти все сообщения от housewm
 
Регистрация: 21.12.2010
Сообщений: 41

Направте на путь истенный
Вот пытаюсь сделать граббер небольшой

Суть граббера: есть сайт доска объявлений там постоянно добавляются новые сообщения.

Мне нужно забирать эти новые сообщения и выводить у себя на страничке (как бы лента новостей).

На страничке вывожу с помощью Ajax. В скрипте сделал таймер чтоб он каждые n сек забирал сообщения с помощью php граббера, и добавлял его в список.

Но так как нет ни какой проверки на совпадения он постоянно гонит дубли пока не появится новое сообщение на сайте доноре.

Вопрос вот в чем: как организовать проверку нового сообщения с тем что есть уже, и соответственно если новое совподает со старым то его не записываем, а если не совподает то записываем.

Никак не могу понять где проверку делать в php или в j.

И как ее правильно организовать.

Это файл PHP

<? 


include 'simple_html_dom.php';
$html = file_get_html('url'); 

$e = $html->find('ul#srchrslt-adtable', 0)->find('li', 0);



foreach ($e->find('h3') as $h3) {
	foreach ($h3->find('a') as $a) {

        $t= "<li><div style='width: 600px; padding:20px;border:1px solid #cccccc; margin-bottom:20px'> <a href='url".$a->href."'>".$a->plaintext."</a></div></li>";
		
		  
	}
}


?>
<html>
	<body><?echo $t; ?></body>
</html>


Это ajax
<html>
	<head>
		<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"  type="text/javascript"></script>
	</head>
	<body>

		<script type="text/javascript">

		setInterval(function() {
			
    var value = 0;
		$.ajax({
  			url: 'php.php',
  			cache: false,
  			success: function(data) {
    			$('.result').append('<li>'+data+'</li>');
    			
    			}
});

}, 5000);

 </script>
<ul class="result"></ul>
	</body>
</html>
Ответить с цитированием
  #2 (permalink)  
Старый 16.12.2013, 16:50
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от housewm
И как ее правильно организовать.
Храни в бд или файле последний заголовок сграбленный. При следующем запросе пытайся его найти. Если нашел - отдавай только последущие за ним. Если не нашол - значит он уже ушел со страницы, отдавай все заголовки.
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #3 (permalink)  
Старый 17.12.2013, 00:07
Аватар для freethetan
Интересующийся
Отправить личное сообщение для freethetan Посмотреть профиль Найти все сообщения от freethetan
 
Регистрация: 15.11.2013
Сообщений: 28

А если отправлять на клиент timestamp
и при запросе к серверу указывать дай мне после last_received_timestamp
Клиент никогда не знает есть новые сообщения или нет!
А php делает запрос в MySQL и выдает клиенту результат после last_received_timestamp
Если поле не указано выдает ввесь имеющийся список.
Ну или как то так...

Последний раз редактировалось freethetan, 17.12.2013 в 00:11.
Ответить с цитированием
  #4 (permalink)  
Старый 17.12.2013, 04:39
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Ну это решение второй половины задачи. Нужно же и сграбить так, чтоб небыло дублей, и клиенту не отсылать дубли.
__________________
В личку только с интересными предложениями
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Можно ли узнать полный путь изображения в jquery pautinaweb jQuery 1 30.01.2013 23:39
Как получить путь до файла из css в firefox? wild_snail Events/DOM/Window 4 11.05.2012 21:09
Получение значения поля объекта зная путь к полю и сам объект mgvmax Общие вопросы Javascript 11 07.03.2012 19:09
Путь к элементу. alex_oo7 AJAX и COMET 3 05.11.2010 11:15
Относительный путь в JScript warobushek Общие вопросы Javascript 3 13.08.2008 13:15